using IcsSEMCtrl.Event.Device;
using System;
namespace Lifter.Event.Lifter
{
	[Serializable]
	public class LifterPortShiftEvent : DeviceEvent
	{
		public enum LifterPortShiftEventType
		{
			FEED = 1,
			SHIFT,
			WIWO
		}
		public static readonly string CLASS = "LifterPortShiftEvent";
		public static readonly string SPECIFIC_SUBJECT = "PortShift";
		public new static readonly string SUBJECT = DeviceEvent.SUBJECT + "." + LifterPortShiftEvent.SPECIFIC_SUBJECT;
		private string lifterPortId;
		private LifterPortShiftEvent.LifterPortShiftEventType portShiftEvent;
		public string LifterPortId
		{
			get
			{
				return this.lifterPortId;
			}
			set
			{
				this.lifterPortId = value;
			}
		}
		public LifterPortShiftEvent.LifterPortShiftEventType PortShiftEvent
		{
			get
			{
				return this.portShiftEvent;
			}
			set
			{
				this.portShiftEvent = value;
			}
		}
		public LifterPortShiftEvent(string deviceId, string deviceType, string lifterPortId, LifterPortShiftEvent.LifterPortShiftEventType portShiftEvent) : base(deviceId, deviceType)
		{
			this.lifterPortId = lifterPortId;
			this.portShiftEvent = portShiftEvent;
			base.SetSubject(this.CreateSubject(lifterPortId));
		}
		protected new string CreateSubject(string id)
		{
			return LifterPortShiftEvent.FormSubject(id);
		}
		public new static string FormSubject(string id)
		{
			return LifterPortShiftEvent.SUBJECT + "." + id;
		}
	}
}
